#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Created by master on 2017/3/4

# 开启新进程

import subprocess

# subprocess.run("df -h",shell=True)


# 命令在shell中执行 不加转换 使用Popen是为了返回命令的执行结果 shell = True ，允许 shell 命令是字符串形式
# subprocess.PIPE 会打开一个新的shell并把执行结果放在管道(PIPE)中，实现与父shell的通信
a = subprocess.Popen("ipconfig", shell=True, stdout=subprocess.PIPE)
print(a.stdout.read())

# 执行命令，如果执行状态码是 0 ，则返回0，否则抛异常

subprocess.check_call(["ls", "-l"])
subprocess.check_call("exit 1", shell=True)

# check_output

# 执行命令，如果状态码是 0 ，则返回执行结果，否则抛异常

subprocess.check_output(["echo", "Hello World!"])
subprocess.check_output("exit 1", shell=True)
